// import 'dart:async';
//
// import 'package:flutter/cupertino.dart';
// import 'package:flutter/material.dart';
// import 'package:flutter/services.dart';
// import 'package:flutter_easyloading/flutter_easyloading.dart';
// import 'package:flutter_learning/isolate/utils/ly_log.dart';
// import 'package:flutter_serial_communication/flutter_serial_communication.dart';
// import 'package:flutter_serial_communication/models/device_info.dart';
// import 'package:get/get.dart';
// import 'package:get/get_core/src/get_main.dart';
// // import 'package:flutter_libserialport/flutter_libserialport.dart';
//
// class LYSerialPortManager {
//   LYSerialPortManager._internal();
//   static final LYSerialPortManager _instance = LYSerialPortManager._internal();
//   static LYSerialPortManager get share {
//     return _instance;
//   }
//
//   Future<List<DeviceInfo>>? init() async {
//     final flutterSerialCommunicationPlugin = FlutterSerialCommunication();
//     List<DeviceInfo> availableDevices =
//         await flutterSerialCommunicationPlugin.getAvailableDevices();
//     LYLog.d(availableDevices);
//     EasyLoading.showToast(availableDevices.toString());
//     return availableDevices;
//     // if (availableDevices.isNotEmpty) {
//     //   List<Widget> actions = [];
//     //
//     //   for (final device in availableDevices) {
//     //     actions.add(Text(
//     //         'deviceName:${device.deviceName}productName:${device.productName}serialNumber:${device.serialNumber}'));
//     //   }
//     //   Navigator.of(Get.context!).push(MaterialPageRoute(builder: (builder) {
//     //     return CupertinoAlertDialog(
//     //       title: const Text("外设列表"),
//     //       actions: actions,
//     //     );
//     //     //   }));
//     // } else {
//     //   EasyLoading.showToast('未获取到可用的外设', duration: const Duration(seconds: 5));
//     // }
//   }
//
//   // void init() {
//   //   //打开串口
//   //   SerialPort serialPort = SerialPort("/dev/ttyS1"); //串口名称 COM1
//   //   bool isSuccess = serialPort.openReadWrite();
//   //   if (isSuccess) {
//   //     //①串口打开后再配置参数
//   //     var config = SerialPortConfig();
//   //     config.baudRate = 9600; //波特率 115200
//   //     config.bits = 8; //数据位
//   //     config.parity = SerialPortParity.none; //校验位
//   //     config.stopBits = 1; //停止位
//   //     config.xonXoff = 0;
//   //     config.rts = 1;
//   //     config.cts = 0;
//   //     config.dsr = 0;
//   //     config.dtr = 1;
//   //     serialPort.config = config;
//   //     config.dispose();
//   //
//   //     //读串口数据
//   //     SerialPortReader reader = SerialPortReader(serialPort, timeout: 3);
//   //     StreamSubscription<Uint8List> subscription = reader.stream.listen((data) {
//   //       //data为Uint8List 类似java的byte[]
//   //       print(data);
//   //     });
//   //     //停止读串口
//   //     //subscription.cancel();
//   //
//   //     //写数据
//   //     List<int> data = [1, 2, 3, 4, 5, 0];
//   //     Uint8List bytes = Uint8List.fromList(data);
//   //     serialPort.write(bytes);
//   //   }
//   // }
// }
